class Solution {
public:
    /*
    1、初始化i=0,j=0;
    2、如果窗口中值小于sum,表示要扩大窗口，j++
    3、如果窗口中值大于sum,表示要缩小窗口,i++;
    4、窗口值等于目标值，存结果，缩小窗口，重复上面2，3
    */
    vector<vector<int> > FindContinuousSequence(int sum) {
        vector<vector<int>> res;
        vector<int>tmp;
        int i,j,s;
        for(i=1,j=1,s=1;i<sum;i++)
        {
            while(s<sum) //窗口中值小于目标，右边界向右移动
            {
                j++;
                s+=j;
            }
            if(s==sum&&j-i>0) //窗口中的值==目标
            {
                for(int k=i;k<=j;k++)
                {
                    tmp.push_back(k);
                }
                res.push_back(tmp);
                tmp.clear();
            }
            s-=i; //窗口中的值大于目标
        }
        return res;
    }
};